package com.molichuxing.services.infrastructure.bean;

import com.molichuxing.framework.bean.RootBean;

import java.math.BigDecimal;
import java.time.LocalDateTime;

public class OrderRenegeBean extends RootBean {
    /**
     * id
     */
    private Integer id;

    /**
     * 订单号 order_code
     */
    private Long orderCode;

    /**
     * 用户id user_id
     */
    private Integer userId;

    /**
     * 退租前订单状态（12: 待提车, 13: 用车中） before_order_status
     */
    private Integer beforeOrderStatus;

    /**
     * 退租时间 renege_time
     */
    private LocalDateTime renegeTime;

    /**
     * 退租状态（0：取消退租，1：退租中，2：退租完成，3：诉讼） renege_status
     */
    private Integer renegeStatus;

    /**
     * 费用类型（1：我司应收，2：我司应付） cost_type
     */
    private Integer costType;

    /**
     * 费用金额 cost_amount
     */
    private BigDecimal costAmount;

    /**
     * 费用添加时间 cost_time
     */
    private LocalDateTime costTime;

    /**
     * 退款收款人 payee
     */
    private String payee;

    /**
     * 开户行 bank
     */
    private String bank;

    /**
     * 收款银行账号 bank_number
     */
    private String bankNumber;

    /**
     * 退款人添加时间 payee_time
     */
    private LocalDateTime payeeTime;

    /**
     * 退租类型（1：主动退租，2：协商退租） renege_type
     */
    private Integer renegeType;

    /**
     * 逾期天数合计（还车后存） overdue_days_total
     */
    private Integer overdueDaysTotal;

    /**
     * 逾期次数合计（还车后存） overdue_num_total
     */
    private Integer overdueNumTotal;

    /**
     * 创建时间 gmt_create
     */
    private LocalDateTime gmtCreate;

    /**
     * 修改时间 gmt_modified
     */
    private LocalDateTime gmtModified;

    /**
     * orders_order_renege
     */
    private static final long serialVersionUID = 1L;

    /**
     * @return id
     * @date 2020-07-22 17:26:44
     */
    @Override
    public Integer getId() {
        return id;
    }

    /**
     * @param id
     * @date 2020-07-22 17:26:44
     */
    @Override
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 订单号
     *
     * @return order_code 订单号
     * @date 2020-07-22 17:26:44
     */
    public Long getOrderCode() {
        return orderCode;
    }

    /**
     * 订单号
     *
     * @param orderCode 订单号
     * @date 2020-07-22 17:26:44
     */
    public void setOrderCode(Long orderCode) {
        this.orderCode = orderCode;
    }

    /**
     * 用户id
     *
     * @return user_id 用户id
     * @date 2020-07-22 17:26:44
     */
    public Integer getUserId() {
        return userId;
    }

    /**
     * 用户id
     *
     * @param userId 用户id
     * @date 2020-07-22 17:26:44
     */
    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    /**
     * 退租前订单状态（12: 待提车, 13: 用车中）
     *
     * @return before_order_status 退租前订单状态（12: 待提车, 13: 用车中）
     * @date 2020-07-22 17:26:44
     */
    public Integer getBeforeOrderStatus() {
        return beforeOrderStatus;
    }

    /**
     * 退租前订单状态（12: 待提车, 13: 用车中）
     *
     * @param beforeOrderStatus 退租前订单状态（12: 待提车, 13: 用车中）
     * @date 2020-07-22 17:26:44
     */
    public void setBeforeOrderStatus(Integer beforeOrderStatus) {
        this.beforeOrderStatus = beforeOrderStatus;
    }

    /**
     * 退租时间
     *
     * @return renege_time 退租时间
     * @date 2020-07-22 17:26:44
     */
    public LocalDateTime getRenegeTime() {
        return renegeTime;
    }

    /**
     * 退租时间
     *
     * @param renegeTime 退租时间
     * @date 2020-07-22 17:26:44
     */
    public void setRenegeTime(LocalDateTime renegeTime) {
        this.renegeTime = renegeTime;
    }

    /**
     * 退租状态（0：取消退租，1：退租中，2：退租完成，3：诉讼）
     *
     * @return renege_status 退租状态（0：取消退租，1：退租中，2：退租完成，3：诉讼）
     * @date 2020-07-22 17:26:44
     */
    public Integer getRenegeStatus() {
        return renegeStatus;
    }

    /**
     * 退租状态（0：取消退租，1：退租中，2：退租完成，3：诉讼）
     *
     * @param renegeStatus 退租状态（0：取消退租，1：退租中，2：退租完成，3：诉讼）
     * @date 2020-07-22 17:26:44
     */
    public void setRenegeStatus(Integer renegeStatus) {
        this.renegeStatus = renegeStatus;
    }

    /**
     * 费用类型（1：我司应收，2：我司应付）
     *
     * @return cost_type 费用类型（1：我司应收，2：我司应付）
     * @date 2020-07-22 17:26:44
     */
    public Integer getCostType() {
        return costType;
    }

    /**
     * 费用类型（1：我司应收，2：我司应付）
     *
     * @param costType 费用类型（1：我司应收，2：我司应付）
     * @date 2020-07-22 17:26:44
     */
    public void setCostType(Integer costType) {
        this.costType = costType;
    }

    /**
     * 费用金额
     *
     * @return cost_amount 费用金额
     * @date 2020-07-22 17:26:44
     */
    public BigDecimal getCostAmount() {
        return costAmount;
    }

    /**
     * 费用金额
     *
     * @param costAmount 费用金额
     * @date 2020-07-22 17:26:44
     */
    public void setCostAmount(BigDecimal costAmount) {
        this.costAmount = costAmount;
    }

    /**
     * 费用添加时间
     *
     * @return cost_time 费用添加时间
     * @date 2020-07-22 17:26:44
     */
    public LocalDateTime getCostTime() {
        return costTime;
    }

    /**
     * 费用添加时间
     *
     * @param costTime 费用添加时间
     * @date 2020-07-22 17:26:44
     */
    public void setCostTime(LocalDateTime costTime) {
        this.costTime = costTime;
    }

    /**
     * 退款收款人
     *
     * @return payee 退款收款人
     * @date 2020-07-22 17:26:44
     */
    public String getPayee() {
        return payee;
    }

    /**
     * 退款收款人
     *
     * @param payee 退款收款人
     * @date 2020-07-22 17:26:44
     */
    public void setPayee(String payee) {
        this.payee = payee == null ? null : payee.trim();
    }

    /**
     * 开户行
     *
     * @return bank 开户行
     * @date 2020-07-22 17:26:44
     */
    public String getBank() {
        return bank;
    }

    /**
     * 开户行
     *
     * @param bank 开户行
     * @date 2020-07-22 17:26:44
     */
    public void setBank(String bank) {
        this.bank = bank == null ? null : bank.trim();
    }

    /**
     * 收款银行账号
     *
     * @return bank_number 收款银行账号
     * @date 2020-07-22 17:26:44
     */
    public String getBankNumber() {
        return bankNumber;
    }

    /**
     * 收款银行账号
     *
     * @param bankNumber 收款银行账号
     * @date 2020-07-22 17:26:44
     */
    public void setBankNumber(String bankNumber) {
        this.bankNumber = bankNumber == null ? null : bankNumber.trim();
    }

    /**
     * 退款人添加时间
     *
     * @return payee_time 退款人添加时间
     * @date 2020-07-22 17:26:44
     */
    public LocalDateTime getPayeeTime() {
        return payeeTime;
    }

    /**
     * 退款人添加时间
     *
     * @param payeeTime 退款人添加时间
     * @date 2020-07-22 17:26:44
     */
    public void setPayeeTime(LocalDateTime payeeTime) {
        this.payeeTime = payeeTime;
    }

    /**
     * 退租类型（1：主动退租，2：协商退租）
     *
     * @return renege_type 退租类型（1：主动退租，2：协商退租）
     * @date 2020-07-22 17:26:44
     */
    public Integer getRenegeType() {
        return renegeType;
    }

    /**
     * 退租类型（1：主动退租，2：协商退租）
     *
     * @param renegeType 退租类型（1：主动退租，2：协商退租）
     * @date 2020-07-22 17:26:44
     */
    public void setRenegeType(Integer renegeType) {
        this.renegeType = renegeType;
    }

    /**
     * 逾期天数合计（还车后存）
     *
     * @return overdue_days_total 逾期天数合计（还车后存）
     * @date 2020-07-22 17:26:44
     */
    public Integer getOverdueDaysTotal() {
        return overdueDaysTotal;
    }

    /**
     * 逾期天数合计（还车后存）
     *
     * @param overdueDaysTotal 逾期天数合计（还车后存）
     * @date 2020-07-22 17:26:44
     */
    public void setOverdueDaysTotal(Integer overdueDaysTotal) {
        this.overdueDaysTotal = overdueDaysTotal;
    }

    /**
     * 逾期次数合计（还车后存）
     *
     * @return overdue_num_total 逾期次数合计（还车后存）
     * @date 2020-07-22 17:26:44
     */
    public Integer getOverdueNumTotal() {
        return overdueNumTotal;
    }

    /**
     * 逾期次数合计（还车后存）
     *
     * @param overdueNumTotal 逾期次数合计（还车后存）
     * @date 2020-07-22 17:26:44
     */
    public void setOverdueNumTotal(Integer overdueNumTotal) {
        this.overdueNumTotal = overdueNumTotal;
    }

    /**
     * 创建时间
     *
     * @return gmt_create 创建时间
     * @date 2020-07-22 17:26:44
     */
    @Override
    public LocalDateTime getGmtCreate() {
        return gmtCreate;
    }

    /**
     * 创建时间
     *
     * @param gmtCreate 创建时间
     * @date 2020-07-22 17:26:44
     */
    @Override
    public void setGmtCreate(LocalDateTime gmtCreate) {
        this.gmtCreate = gmtCreate;
    }

    /**
     * 修改时间
     *
     * @return gmt_modified 修改时间
     * @date 2020-07-22 17:26:44
     */
    @Override
    public LocalDateTime getGmtModified() {
        return gmtModified;
    }

    /**
     * 修改时间
     *
     * @param gmtModified 修改时间
     * @date 2020-07-22 17:26:44
     */
    @Override
    public void setGmtModified(LocalDateTime gmtModified) {
        this.gmtModified = gmtModified;
    }

    /**
     * @mbg.generated
     */
    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        OrderRenegeBean other = (OrderRenegeBean) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
                && (this.getOrderCode() == null ? other.getOrderCode() == null : this.getOrderCode().equals(other.getOrderCode()))
                && (this.getUserId() == null ? other.getUserId() == null : this.getUserId().equals(other.getUserId()))
                && (this.getBeforeOrderStatus() == null ? other.getBeforeOrderStatus() == null : this.getBeforeOrderStatus().equals(other.getBeforeOrderStatus()))
                && (this.getRenegeTime() == null ? other.getRenegeTime() == null : this.getRenegeTime().equals(other.getRenegeTime()))
                && (this.getRenegeStatus() == null ? other.getRenegeStatus() == null : this.getRenegeStatus().equals(other.getRenegeStatus()))
                && (this.getCostType() == null ? other.getCostType() == null : this.getCostType().equals(other.getCostType()))
                && (this.getCostAmount() == null ? other.getCostAmount() == null : this.getCostAmount().equals(other.getCostAmount()))
                && (this.getCostTime() == null ? other.getCostTime() == null : this.getCostTime().equals(other.getCostTime()))
                && (this.getPayee() == null ? other.getPayee() == null : this.getPayee().equals(other.getPayee()))
                && (this.getBank() == null ? other.getBank() == null : this.getBank().equals(other.getBank()))
                && (this.getBankNumber() == null ? other.getBankNumber() == null : this.getBankNumber().equals(other.getBankNumber()))
                && (this.getPayeeTime() == null ? other.getPayeeTime() == null : this.getPayeeTime().equals(other.getPayeeTime()))
                && (this.getRenegeType() == null ? other.getRenegeType() == null : this.getRenegeType().equals(other.getRenegeType()))
                && (this.getOverdueDaysTotal() == null ? other.getOverdueDaysTotal() == null : this.getOverdueDaysTotal().equals(other.getOverdueDaysTotal()))
                && (this.getOverdueNumTotal() == null ? other.getOverdueNumTotal() == null : this.getOverdueNumTotal().equals(other.getOverdueNumTotal()))
                && (this.getGmtCreate() == null ? other.getGmtCreate() == null : this.getGmtCreate().equals(other.getGmtCreate()))
                && (this.getGmtModified() == null ? other.getGmtModified() == null : this.getGmtModified().equals(other.getGmtModified()));
    }

    /**
     * @mbg.generated
     */
    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getOrderCode() == null) ? 0 : getOrderCode().hashCode());
        result = prime * result + ((getUserId() == null) ? 0 : getUserId().hashCode());
        result = prime * result + ((getBeforeOrderStatus() == null) ? 0 : getBeforeOrderStatus().hashCode());
        result = prime * result + ((getRenegeTime() == null) ? 0 : getRenegeTime().hashCode());
        result = prime * result + ((getRenegeStatus() == null) ? 0 : getRenegeStatus().hashCode());
        result = prime * result + ((getCostType() == null) ? 0 : getCostType().hashCode());
        result = prime * result + ((getCostAmount() == null) ? 0 : getCostAmount().hashCode());
        result = prime * result + ((getCostTime() == null) ? 0 : getCostTime().hashCode());
        result = prime * result + ((getPayee() == null) ? 0 : getPayee().hashCode());
        result = prime * result + ((getBank() == null) ? 0 : getBank().hashCode());
        result = prime * result + ((getBankNumber() == null) ? 0 : getBankNumber().hashCode());
        result = prime * result + ((getPayeeTime() == null) ? 0 : getPayeeTime().hashCode());
        result = prime * result + ((getRenegeType() == null) ? 0 : getRenegeType().hashCode());
        result = prime * result + ((getOverdueDaysTotal() == null) ? 0 : getOverdueDaysTotal().hashCode());
        result = prime * result + ((getOverdueNumTotal() == null) ? 0 : getOverdueNumTotal().hashCode());
        result = prime * result + ((getGmtCreate() == null) ? 0 : getGmtCreate().hashCode());
        result = prime * result + ((getGmtModified() == null) ? 0 : getGmtModified().hashCode());
        return result;
    }

    /**
     * @mbg.generated
     */
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", orderCode=").append(orderCode);
        sb.append(", userId=").append(userId);
        sb.append(", beforeOrderStatus=").append(beforeOrderStatus);
        sb.append(", renegeTime=").append(renegeTime);
        sb.append(", renegeStatus=").append(renegeStatus);
        sb.append(", costType=").append(costType);
        sb.append(", costAmount=").append(costAmount);
        sb.append(", costTime=").append(costTime);
        sb.append(", payee=").append(payee);
        sb.append(", bank=").append(bank);
        sb.append(", bankNumber=").append(bankNumber);
        sb.append(", payeeTime=").append(payeeTime);
        sb.append(", renegeType=").append(renegeType);
        sb.append(", overdueDaysTotal=").append(overdueDaysTotal);
        sb.append(", overdueNumTotal=").append(overdueNumTotal);
        sb.append(", gmtCreate=").append(gmtCreate);
        sb.append(", gmtModified=").append(gmtModified);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}